package org.x.usermod.service;

import org.x.usermod.entity.SysConfigEntity;
import org.x.usermod.entity.SysConfigHistoryEntity;

import java.util.List;

public interface ConfigService {
    /**
     * 获取所有配置
     * @return
     */
    List<SysConfigEntity> getConfigList();
    /**
     * 刷新缓存
     * @return
     */
    List<SysConfigEntity> refreshConfig();

    /**
     * 查询公共配置
     * @return
     */
    List<SysConfigEntity> getPublicConfig();

    /**
     * 更新配置
     * @param id
     * @param configValue
     */
    void updateConfig(Integer id, String configValue);
    /**
     * 根据条件查询配置历史，仅提供根据配置名称和配置人进行查询
     * @param configKey 配置名称
     * @param operatorId 配置人
     * @return
     */
    List<SysConfigHistoryEntity> getHistoryList(String configKey, String operatorId,Integer page,Integer pageSize);
    /**
     * 根据id查询配置详情
     * @param id
     * @return
     */
    SysConfigEntity getConfigDetail(Integer id);

    /**
     * 根据配置键查询配置详情
     * @param configKey
     * @return
     */
    List<SysConfigEntity> getConfigByKey(String configKey);
}
